package org.ielts.domain.log;

import java.util.Date;

import javax.persistence.DiscriminatorValue;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.ManyToOne;

import org.ielts.domain.base.SignCourse;
import org.ielts.domain.security.User;

@Entity
@DiscriminatorValue("ChangeSignCourse")
public class ChangeSignCourseLog extends SchoolLog {

	public ChangeSignCourseLog() {
		setLogType("ChangeSignCourse");
	}

	private ChangeSignCourseType type;

	private boolean checked;

	@Override
	public String getLogType() {
		return "ChangeSignCourse";
	}

	@ManyToOne(fetch = FetchType.EAGER)
	private User checker;

	@ManyToOne(fetch = FetchType.EAGER)
	SignCourse signCourse;

	int oldTimes;

	int newTimes;

	Date oldEndDate;

	Date newEndDate;

	public SignCourse getSignCourse() {
		return signCourse;
	}

	public void setSignCourse(SignCourse signCourse) {
		this.signCourse = signCourse;
	}

	public int getOldTimes() {
		return oldTimes;
	}

	public void setOldTimes(int oldTimes) {
		this.oldTimes = oldTimes;
	}

	public int getNewTimes() {
		return newTimes;
	}

	public void setNewTimes(int newTimes) {
		this.newTimes = newTimes;
	}

	public Date getOldEndDate() {
		return oldEndDate;
	}

	public void setOldEndDate(Date oldEndDate) {
		this.oldEndDate = oldEndDate;
	}

	public Date getNewEndDate() {
		return newEndDate;
	}

	public void setNewEndDate(Date newEndDate) {
		this.newEndDate = newEndDate;
	}

	public boolean isChecked() {
		return checked;
	}

	public void setChecked(boolean checked) {
		this.checked = checked;
	}

	public User getChecker() {
		return checker;
	}

	public void setChecker(User checker) {
		this.checker = checker;
	}

	public ChangeSignCourseType getType() {
		return type;
	}

	public void setType(ChangeSignCourseType type) {
		this.type = type;
	}
}
